Wine Barrel Wall
Creating a radius wall for our new wine cellar. Using rstats to randomize the placement and color of the slats.
set.seed(42)
width_board <- 2.5
width_int <- 89.5
width_ext <- 112
height <- 108
num_boards_int <- round(width_int / width_board, digits = 0)
num_boards_ext <- round(width_ext / width_board, digits = 0)
Interior Wall Dimensions:
- Wall length 89.5"
- Wall height 108"
- Slats were cut to a width of 2.5" and are (36“, 48”, or 60" in length)
Interior Wall Layout
slat <- sort(rep(1:num_boards_int, 3))
position <- rep(c("bottom", "middle", "top"), num_boards_int / 3)
len <- rep(c(3, 3, 3, 4, 5, NA, 5, 4, NA), num_boards_int / 3)
layout <- data.frame(cbind(slat, position, len),
stringsAsFactors = FALSE) %>%
mutate(slat = as.numeric(slat),
len = as.numeric(len)) %>%
filter(complete.cases(.))
layout$stain <- as.character(sample(1:2, size = nrow(layout), replace = TRUE))
layout <- mutate(layout, image_file = case_when(stain == "1" ~ "walnut.png",
TRUE ~ "espresso.png"))
ggplot(layout, aes(x = slat, y = len, image = image_file, group = position)) +
ggtextures::geom_textured_col(width = 1) +
scale_y_continuous(breaks = seq(0, 9, 3),
labels = scales::dollar_format(suffix = "ft", prefix = "")) +
scale_x_continuous(breaks = seq(0, num_boards_int, 6)) +
labs(x = "Slat Position", y = "Wall Position") +
theme_bw() +
theme(plot.title = element_text(hjust = 0.5, size = 14,
family = "Tahoma", face = "bold"),
text = element_text(family = "Tahoma"),
axis.text.x = element_text(colour = "black", size = 10),
axis.text.y = element_text(colour = "black", size = 10)) +
ggtitle("Wine Room Interior Wall")
Exterior Wall Dimensions:
- Wall length 112"
- Wall height 108"
- Slats were cut to a width of 2.5" and are (36“, 48”, or 60" in length)
Exterior Wall Layout
slat <- sort(rep(1:num_boards_ext, 3))
position <- rep(c("bottom", "middle", "top"), num_boards_ext / 3)
len <- rep(c(3, 3, 3, 4, 5, NA, 5, 4, NA), num_boards_ext / 3)
layout <- data.frame(cbind(slat, position, len), stringsAsFactors = FALSE) %>%
mutate(slat = as.numeric(slat),
len = as.numeric(len)) %>%
filter(complete.cases(.))
layout$stain <- as.character(sample(1:2, size = nrow(layout), replace = TRUE))
layout <- mutate(layout, image_file = case_when(stain == "1" ~ "walnut.png",
TRUE ~ "espresso.png"))
ggplot(layout, aes(x = slat, y = len, image = image_file, group = position)) +
ggtextures::geom_textured_col(width = 1) +
scale_y_continuous(breaks = seq(0, 9, 3),
labels = scales::dollar_format(suffix = "ft", prefix = "")) +
scale_x_continuous(breaks = seq(0, num_boards_ext, 6)) +
labs(x = "Slat Position", y = "Wall Position") +
theme_bw() +
theme(plot.title = element_text(hjust = 0.5, size = 14,
family = "Tahoma", face = "bold"),
text = element_text(family = "Tahoma"),
axis.text.x = element_text(colour = "black", size = 10),
axis.text.y = element_text(colour = "black", size = 10)) +
ggtitle("Wine Room Exterior Wall")